קראתי בדוקומנטציה של Laravel על זה, וזה אכן נתן גישה, למשל, ל-laravel.loc/docs (מארח וירטואלי), אבל זה עדיין אִפשר להיכנס ל-laravel.loc/index.php/docs.
השאלה שלי היא: איך אני מוציא את ה-index.php מכל הקישורים שלי? (אם מישהו מנסה להיכנס ל-laravel.loc/index.php/$1, הוא יועבר ל-laravel.loc/$1.)

13 תשובות

avatar ענה ldbrgr ב 24 לדצמבר 2012 #

application/config/application.php

/* ... code */
'index' => 'index.php',
/* more  code .. */

to
/* ... code */
'index' => '',
/* more  code .. */


CTRL+S

avatar ענה OrelBeY ב 24 לדצמבר 2012 #

עשיתי את זה. לא עבד. (זה אחד הדברים שהייתי צריך לעשות כדי להשיג את התוצאה שקיבלתי מקודם.)

avatar ענה Michael ב 24 לדצמבר 2012 #

אתה לא.
כמו שאתה יכול להיכנס כאן: http://phpguide.co.il/index.php/q1145/Laravel++%D7%9C%D7%94%D7%95%D7%A6%D7%99%D7%90+%D7%90%D7%AA+%D7%94indexphp+%D7%9E%D7%94%D7%A7%D7%99%D7%A9%D7%95%D7%A8%D7%99%D7%9D+%D7%9C%D7%92%D7%9E%D7%A8%D7%99.htm
כמו שאתה יכול להיכנס כאן: http://laravel.com/index.php/docs/install#cleaner-urls
או כל אתר אחר כי הindex.php זה קובץ קיים.
הראוט שנמצא ב.htaccess עובד בצורה הכי פשוטה: אם הקובץ / תיקייה קיים, הוא יגש אליו. אחרת, הוא יקח את הסטרינג וישלח אותו לindex.php ואז הפריימוורק (לרבל, או כל פריימוורק שמציע route) יודע לנתח את הקישור ולטעון את הקונטרולר המתאים / הפונקציה שהגדרת בroute שלך.
אתה תמיד יכול לעשות שלא משנה לאן שהבנאדם יגש, גם אם הקובץ קיים הוא יחזיר את הסטרינג לאינדקס שלך, אבל אז תצטרך לבצע proxy ברמת האפליקציה ויהיה לך בעיתי עכשיו לממש דבר כזה.
זה לא מפריע לאף אחד, תשאיר את זה כמו שזה.

avatar ענה OrelBeY ב 24 לדצמבר 2012 #

זה לא בעייתי למנועי חיפוש או משהו כזה? (שחצי מהכתובות באתר מובילות לדפים שזהים לחצי מהכתובות האחרות)

avatar ענה Michael ב 24 לדצמבר 2012 #

אם לא תירשום בשום מקום index.php אני לא רואה איך זה מהווה בעיה

avatar ענה OrelBeY ב 24 לדצמבר 2012 #

מממ. שכחתי שאני יכול פשוט להשתמש בתג קנוניקל...
תודה רבה לכם. :-)

avatar ענה ldbrgr ב 28 לדצמבר 2012 #

אתה פשוט יכול לשנות את השם של index.php למשהו רנדיאמלי (נגיד g53w5hdfvsdf_dfgh44.php) שאף אחד אף פעם לא ידיע אליו אף פעם ולעדכן את זה ב.htaccess או להוסיף תנאי (יש הרבה דרכים לעשות את זה, לך על strpos) בסקריפט שברגע שניגשים ל index.php/sdf הלקוח יקבל 301 ל sdf ..

avatar ענה OrelBeY ב 28 לדצמבר 2012 #

איך אני עושה הפניית 301 לזה?

avatar ענה ldbrgr ב 28 לדצמבר 2012 #

במקרה של laravel:
http://laravel.com/api/class-Laravel.Redirect.html

avatar ענה OrelBeY ב 28 לדצמבר 2012 #

ובכל טעינת עמוד אני אעשה את זה? זה כדאי?

avatar ענה intval ב 28 לדצמבר 2012 #

לא ברור לי על מה אתה מתעכב. עזוב את ה index.php הזה שם. הוא לא מפריע לאף אחד ואף אחד לא יודע על קיומו.

avatar ענה OrelBeY ב 28 לדצמבר 2012 #

אני לא מתעכב על זה, סתם עוקב אחרי התשובות... :-)

avatar ענה ldbrgr ב 28 לדצמבר 2012 #

"ובכל טעינת עמוד אני אעשה את זה? זה כדאי?"
כן, פשוט דחוף את זה ב before filter .. זה לא אמור לאנוס את הזיכרון או להאט את הטעינה ביותר מ0.01 שניה..